<?php
if ( count( get_included_files() ) == 1 ) die( '---' );

class PRATGrille
{
	var $grilleId;
	
	var $nom;	
	
	var $c2i;
	
	var $typeReponse;
	
	var $evaluationSousRef;
	
	var $moyenne;
	
	var $auteur;

	var $tableGrille;

	
    // Constructeur
    function PRATGrille() 
    {
    	$this->grilleId = -1;
    	$this->nom = '';
    	$this->c2i = 'N1';
    	$this->typeReponse = 'booleen';
	$this->evaluationSousRef = 1;
	$this->moyenne = 0;
	$this->auteur = '';
	
	global $C2IPRATtables;    	
	$this->tableGrille = $C2IPRATtables['C2IPRATgrille'];
    }
    
    // Load 
    function load($grilleId)
    {
 
    	$sql = "SELECT *
		FROM `".$this->tableGrille."`
		WHERE grilleId = '".$grilleId."'";
		$data = claro_sql_query_get_single_row($sql);

	   if( !empty($data) )
	   {
	   	$this->grilleId     		= $data['grilleId'];
	   	$this->nom      		= $data['nom'];
	   	$this->c2i      		= $data['c2i'];
	   	$this->typeReponse	   	= $data['typeReponse'];
	   	$this->evaluationSousRef	= $data['evaluationSousRef'];
	   	$this->moyenne      		= $data['moyenne'];
	   	$this->auteur     		= $data['auteur'];
	   	
	   	return true;
	   }
	   else
	   return false;
    }
    
    
    // Save 
    function save()  
    {
    	if( $this->grilleId == -1 )
    	{
    		$sql = "INSERT INTO `".$this->tableGrille."` 
			SET nom = '".$this->nom."',
			    c2i = '".$this->c2i."',
			    typeReponse = '".$this->typeReponse."',
			    evaluationSousRef = '".$this->evaluationSousRef."',
			    moyenne = '".$this->moyenne."',
			    auteur = '".$this->auteur."'";
			// execute the creation query and get id of inserted assignment
		    $insertedId = claro_sql_query_insert_id($sql);

		    if( $insertedId )
		    {
		    	$this->grilleId = (int) $insertedId;

		      return $this->grilleId;
		    }
		    else
		    {
		        return false;
		    }
    	}
    	else
    	{
    		$sql = "UPDATE `".$this->tableGrille."` 
			SET nom = '".$this->nom."',
			    c2i = '".$this->c2i."',
			    typeReponse = '".$this->typeReponse."',
			    evaluationSousRef = '".$this->evaluationSousRef."',
			    moyenne = '".$this->moyenne."',
			    auteur = '".$this->auteur."'
			WHERE grilleId = ".$this->grilleId;
			// execute and return main query
		    if( claro_sql_query($sql) )
		    {
		    	return $this->grilleId;
		    }
		    else
		    {
		    	return false;
		    }
    	}
    }
    
    	 function delete()
	 {
	 	$sql = "DELETE FROM `".$this->tableGrille."` WHERE grilleId = ".$this->grilleId;
	 	if( claro_sql_query($sql) == false ) return false;
			
		$this->grilleId = -1;
		return true;
	 }
	 
	function chercherListeGrilles ()
	{
		$sql_search = "SELECT grilleId FROM `".$this->tableGrille."` WHERE auteur = '".$this->auteur."'";
		return claro_sql_query_fetch_all_rows($sql_search);
	}
	
	
	
	/**
     * get id
     *
     * @author Pierre Raynaud
     * @return int
     */
	function getGrilleId()
	{
		return (int) $this->grilleId;
	}
	
	/**
     * get nom
     *
     * @author Pierre Raynaud
     * @return string
     */
	function getNom()
	{
		return trim($this->nom);
	}
	
	/**
     * set Nom
     *
     * @author Pierre Raynaud
     * @param $value
     */
	function setNom($value)
	{
		$this->nom = $value;
	}
	
	/**
     * get c2i
     *
     * @author Pierre Raynaud
     * @return string
     */
	function getC2i()
	{
		return $this->c2i;
	}
	
	/**
     * set c2i
     *
     * @author Pierre Raynaud
     * @param string $value
     */
	function setC2i($value)
	{
		$this->c2i = trim($value);
	}
	
	/**
     * get typeReponse
     *
     * @author Pierre Raynaud
     * @return string
     */
	function getTypeReponse()
	{
		return $this->typeReponse;
	}
	
	/**
     * set TypeReponse
     *
     * @author Pierre Raynaud
     * @param string $value
     */
	function setTypeReponse($value)
	{
		$this->typeReponse = trim($value);
	}
	
	/**
     * get evaluationSousRef
     *
     * @author Pierre Raynaud
     * @return string
     */
	function getEvaluationSousRef()
	{
		return $this->evaluationSousRef;
	}
	
	/**
     * set setEvaluationSousRef
     *
     * @author Pierre Raynaud
     * @param string $value
     */
	function setEvaluationSousRef($value)
	{
		$this->evaluationSousRef = (int) $value;
	}
	
	/**
     * get moyenne
     *
     * @author Pierre Raynaud
     * @return string
     */
	function getMoyenne()
	{
		return $this->moyenne;
	}
	
	/**
     * set setMoyenne
     *
     * @author Pierre Raynaud
     * @param string $value
     */
	function setMoyenne($value)
	{
		$this->moyenne = (int) $value;
	}
	
	/**
     * get auteur
     *
     * @author Pierre Raynaud
     * @return int
     */
	function getAuteur()
	{
		return $this->auteur;
	}
	
	/**
     * set auteur
     *
     * @author Pierre Raynaud
     * @param int $value
     */
	function setAuteur($value)
	{
		$this->auteur = (int) $value;
	}
}
?>
